﻿/*
Max Interval 
Time Limit:1000MS  Memory Limit:32768K


Description:
There are N (2<=N<=200,000) real numbers. Find the max interval between the adjacent numbers.

Input:
The first line is the number of cases. Following is the cases: Line one: N; Line two: N real numbers. 
Output:
The output contains a single line with the max interval, rounded to the third decimal. 
Sample Input:
1
5
2.3 3.1 7.5 1.5 6.3
Sample Output:
3.200
*/
#include <iostream>
#include <algorithm>
#include <numeric>
#include <vector>
#include <cstdlib>
using namespace std;

int main()
{
	unsigned cases;
	cin>>cases;
	while (cases--)
	{
		unsigned n;
		cin>>n;

		vector<double> reals;
		vector<double> differences(n, 0);
		reals.reserve(n);
		for (double real; n--; reals.push_back(real))
		{
			cin>>real;
		}
		
		adjacent_difference(reals.begin(), reals.end(), differences.begin());
		copy(differences.begin(), differences.end(), ostream_iterator<double>(cout, " "));

 		cout.width(3);
 		cout<<fixed<<*max_element(differences.begin()+1, differences.end())<<endl;
	}


	return EXIT_SUCCESS;
}